Materi Mata Kuliah

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 10 menit 00 detik

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

00 jam 00 menit 00 detik

    Materi belum tersedia

Konsep MVC pada Laravel

Capaian Pembelajaran

Mahasiswa mampu memahami konsep arsitektur MVC (Model View Controller) pada framework Laravel serta memahami fungsi Model, View, dan Controller dalam proses pengembangan aplikasi web.


Pendahuluan

Laravel menggunakan konsep arsitektur MVC (Model View Controller) dalam pengembangan aplikasi.

Konsep MVC bertujuan untuk:

  • Memisahkan logic program
  • Mempermudah maintenance aplikasi
  • Membuat struktur kode lebih rapi
  • Mempermudah pengembangan tim

Dengan MVC, aplikasi menjadi lebih terstruktur dan scalable.


1. Pengertian MVC

A. Pengertian MVC

MVC adalah singkatan dari:

  • Model
  • View
  • Controller

MVC merupakan pola arsitektur aplikasi yang memisahkan:

  • Pengolahan data
  • Tampilan
  • Logic program

B. Tujuan MVC

MVC digunakan untuk:

  • Mempermudah pengembangan aplikasi
  • Memisahkan tugas setiap komponen
  • Mengurangi penulisan kode berulang
  • Mempermudah debugging

C. Struktur MVC

Komponen Fungsi
Model Mengelola data
View Menampilkan tampilan
Controller Mengatur alur aplikasi

D. Cara Kerja MVC

Alur MVC:

  1. User mengakses URL
  2. Route memanggil Controller
  3. Controller memproses request
  4. Controller mengambil data dari Model
  5. Data dikirim ke View
  6. View ditampilkan ke user

E. Ilustrasi MVC

 
User → Route → Controller → Model → Database

View

User
 

F. Kelebihan MVC

Kelebihan Penjelasan
Struktur Rapi Kode lebih terorganisir
Mudah Maintenance Mudah diperbaiki
Reusable Logic dapat digunakan ulang
Kolaborasi Tim Frontend dan backend dapat dipisah

2. Fungsi Model dalam Laravel

A. Pengertian Model

Model adalah bagian MVC yang digunakan untuk:

  • Mengelola data
  • Berinteraksi dengan database
  • Menjalankan query database

Pada Laravel, Model menggunakan ORM bernama:

  • Eloquent ORM

B. Lokasi Model

Model berada di folder:

 
app/Models/
 

C. Fungsi Model

Model digunakan untuk:

  • Mengambil data
  • Menambah data
  • Mengupdate data
  • Menghapus data

D. Membuat Model

Command:

 
php artisan make:model Mahasiswa
 

E. Contoh Model

 
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Mahasiswa extends Model
{

}
 

F. Contoh Mengambil Data

 
$mahasiswa = Mahasiswa::all();
 

Penjelasan:

  • all() digunakan untuk mengambil seluruh data.

G. Fungsi Eloquent ORM

Eloquent mempermudah:

  • Query database
  • Relasi tabel
  • Manipulasi data

Tanpa harus menulis SQL secara manual.


3. Fungsi View dalam Laravel

A. Pengertian View

View adalah bagian MVC yang digunakan untuk:

  • Menampilkan tampilan website kepada user.

View berisi:

  • HTML
  • CSS
  • Blade Template

B. Lokasi View

View berada pada folder:

 
resources/views/
 

C. Format File View

Laravel menggunakan:

  • Blade Template Engine

Format file:

 
.blade.php
 

Contoh:

 
home.blade.php
 

D. Contoh View

 
<!DOCTYPE html>
<html>
<head>
<title>Home</title>
</head>
<body>

<h1>Selamat Datang Mahasiswa</h1>

</body>
</html>
 

E. Menampilkan View dari Route

 
Route::get('/home', function () {
return view('home');
});
 

F. Fungsi Blade Template

Blade digunakan untuk:

  • Menampilkan data dinamis
  • Membuat template reusable
  • Menggunakan syntax Laravel

Contoh:

 
<h1>{{ $nama }}</h1>
 

G. Keunggulan Blade

Keunggulan Penjelasan
Sintaks sederhana Mudah dipahami
Reusable layout Bisa membuat template
Integrasi Laravel Mendukung fitur Laravel

4. Fungsi Controller dalam Laravel

A. Pengertian Controller

Controller adalah bagian MVC yang digunakan untuk:

  • Mengatur alur aplikasi
  • Menangani request user
  • Menghubungkan Model dan View

B. Lokasi Controller

Controller berada pada folder:

 
app/Http/Controllers/
 

C. Membuat Controller

Command:

 
php artisan make:controller MahasiswaController
 

D. Contoh Controller

 
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class MahasiswaController extends Controller
{
public function index()
{
return "Data Mahasiswa";
}
}
 

E. Routing ke Controller

 
use App\Http\Controllers\MahasiswaController;

Route::get('/mahasiswa', [MahasiswaController::class, 'index']);
 

F. Controller Mengirim Data ke View

 
public function index()
{
$nama = "Mahasiswa Sistem Informasi";

return view('home', compact('nama'));
}
 

G. Menampilkan Data pada View

 
<h1>{{ $nama }}</h1>
 

H. Fungsi Controller Secara Umum

Fungsi Penjelasan
Mengatur logic Mengatur proses aplikasi
Menghubungkan Model Mengambil data
Mengirim ke View Menampilkan data

5. Alur Kerja Request pada Laravel

A. Pengertian Request Flow

Request flow adalah proses perjalanan request dari user hingga menghasilkan response.


B. Alur Request Laravel

 
User

Route

Controller

Model

Database

Controller

View

Browser User
 

C. Penjelasan Tahapan

Tahap Penjelasan
User Mengakses URL
Route Menentukan tujuan
Controller Mengatur logic
Model Mengambil data
Database Penyimpanan data
View Menampilkan tampilan

D. Contoh Request Sederhana

User membuka:

 
http://127.0.0.1:8000/mahasiswa
 

E. Route

 
Route::get('/mahasiswa', [MahasiswaController::class, 'index']);
 

F. Controller

 
public function index()
{
$nama = "Laravel MVC";

return view('mahasiswa', compact('nama'));
}
 

G. View

 
<h1>{{ $nama }}</h1>
 

H. Hasil Akhir

Browser menampilkan:

 
Laravel MVC
 

Praktikum

Praktikum 1 — Membuat Controller

Langkah:

 
php artisan make:controller DosenController
 

Praktikum 2 — Membuat View

Buat file:

 
resources/views/dosen.blade.php
 

Isi:

 
<h1>Halaman Dosen</h1>
 

Praktikum 3 — Membuat Route

Tambahkan pada:

 
routes/web.php
 

Kode:

 
use App\Http\Controllers\DosenController;

Route::get('/dosen', function () {
return view('dosen');
});
 

Praktikum 4 — Mengirim Data ke View

Controller:

 
public function index()
{
$nama = "Pemrograman Laravel";

return view('dosen', compact('nama'));
}
 

View:

 
<h1>{{ $nama }}</h1>
 

Tugas Praktikum

Tugas Individu

  1. Jelaskan:
    • Pengertian MVC
    • Fungsi Model
    • Fungsi View
    • Fungsi Controller
  2. Buat:
    • 1 Controller
    • 1 View
    • 3 Route
  3. Buat alur sederhana:
    • Route → Controller → View
  4. Screenshot:
    • Hasil artisan make:controller
    • File route
    • Tampilan browser

Kesimpulan

Konsep MVC pada Laravel membantu developer membangun aplikasi web dengan struktur yang rapi, terorganisir, dan mudah dikembangkan. Dengan memahami fungsi Model, View, dan Controller serta alur request Laravel, mahasiswa dapat mulai membangun aplikasi Laravel secara profesional dan sesuai standar framework modern.


Report Error